package com.zjw.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zjw.annotation.domain.ResponseResult;
import com.zjw.annotation.domain.dto.AddRoleDto;
import com.zjw.annotation.domain.dto.EditRoleDto;
import com.zjw.annotation.domain.entity.Role;

import java.util.List;

/**
 * 角色信息表(Role)表服务接口
 *
 * @author lkzy
 * @since 2023-12-20 13:38:19
 */
public interface RoleService extends IService<Role> {


    public List<Role> getRolesById(Long id);

    ResponseResult getRoleList(Long pageNum, Long pageSize, String roleName, String status);

    ResponseResult chanegRoleStatus(Long roleId, String status);

    ResponseResult getRoleById(Long id);

    ResponseResult addRole(AddRoleDto addRoleDto);

    ResponseResult updateRole(EditRoleDto editRoleDto);

    ResponseResult removeRole(List<Long> id);

    ResponseResult getAllValidRole();

    public List<Role> getAllValidRoleFunc();

    List<Role> getAdminRolesById(Long id);

    void assignRolesToUserById(Long id, List<String> roleIds);

    void removeUserRoleByUserId(Long id);
}

